﻿using DeloUtils;
using DeloUtils.Migra;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using System;
using System.Data.OleDb;

namespace TestDeloUtils
{
    
    
    /// <summary>
    ///Это класс теста для ExportDocumentsTest, в котором должны
    ///находиться все модульные тесты ExportDocumentsTest
    ///</summary>
    [TestClass()]
    public class ExportDocumentsTest
    {


        private TestContext testContextInstance;

        /// <summary>
        ///Получает или устанавливает контекст теста, в котором предоставляются
        ///сведения о текущем тестовом запуске и обеспечивается его функциональность.
        ///</summary>
        public TestContext TestContext
        {
            get
            {
                return testContextInstance;
            }
            set
            {
                testContextInstance = value;
            }
        }

        #region Дополнительные атрибуты теста
        // 
        //При написании тестов можно использовать следующие дополнительные атрибуты:
        //
        //ClassInitialize используется для выполнения кода до запуска первого теста в классе
        //[ClassInitialize()]
        //public static void MyClassInitialize(TestContext testContext)
        //{
        //}
        //
        //ClassCleanup используется для выполнения кода после завершения работы всех тестов в классе
        //[ClassCleanup()]
        //public static void MyClassCleanup()
        //{
        //}
        //
        //TestInitialize используется для выполнения кода перед запуском каждого теста
        //[TestInitialize()]
        //public void MyTestInitialize()
        //{
        //}
        //
        //TestCleanup используется для выполнения кода после завершения каждого теста
        //[TestCleanup()]
        //public void MyTestCleanup()
        //{
        //}
        //
        #endregion


        /// <summary>
        ///Тест для CountRows12mss
        ///</summary>
        [TestMethod()]
        [DeploymentItem("DeloUtils.exe")]
       public void CountRows12mssTestPrk()
        {
            try
            {
                String ConnectionString = "Provider=SQLOLEDB.1;Initial Catalog=D12_DB;Data Source=.\\SQLEXPRESS;Persist Security Info=True;User ID=d12;Password=admin;Pooling=True;Connect Timeout=30";
                OleDbConnection connection = new OleDbConnection(ConnectionString);
                connection.Open();
                int expected = 0;
                int actual;
                actual = ExportDocuments.CountRows12mss(connection);
                connection.Close();
                if (Environment.MachineName != "PRKNT") Assert.Inconclusive("Тест предназначен для запуска на другой машине");
                Assert.AreNotEqual(expected, actual);
            }
            catch (Exception ex)
            {
                Assert.Fail(ex.Message);
            }

        }
    }
}
